home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / linux / atari / source / source.lzh / atari-linux-0.01pl3 / drivers / char / defkeymap.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-06-05  |  74.7 KB  |  1,760 lines

  1. /* Automatically generated by cnv_defkeymap */
  2.  
  3. #include <linux/autoconf.h>
  4. #include <linux/types.h>
  5. #include <linux/keyboard.h>
  6. #include <linux/kd.h>
  7.  
  8. #if defined(CONFIG_AMIGA)
  9. /* (permutation array was ami_kmap) */
  10.  
  11. u_short key_map[NR_KEYMAPS][NR_KEYS] = {
  12.     { /* no modifiers */
  13. /* 00-03 */    '`',    '1',    '2',    '3',
  14. /* 04-07 */    '4',    '5',    '6',    '7',
  15. /* 08-0b */    '8',    '9',    '0',    '-',
  16. /* 0c-0f */    '=',    '\\',    K_HOLE,    K_P0,
  17. /* 10-13 */    'q',    'w',    'e',    'r',
  18. /* 14-17 */    't',    'y',    'u',    'i',
  19. /* 18-1b */    'o',    'p',    '[',    ']',
  20. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  21. /* 20-23 */    'a',    's',    'd',    'f',
  22. /* 24-27 */    'g',    'h',    'j',    'k',
  23. /* 28-2b */    'l',    ';',    '\'',    K_HOLE,
  24. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  25. /* 30-33 */    K_HOLE,    'z',    'x',    'c',
  26. /* 34-37 */    'v',    'b',    'n',    'm',
  27. /* 38-3b */    ',',    '.',    '/',    K_HOLE,
  28. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  29. /* 40-43 */    ' ',    'H'&0x1f,    'I'&0x1f,    K_PENTER,
  30. /* 44-47 */    K_ENTER,    '['&0x1f,    '?'|0x40,    K_HOLE,
  31. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  32. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  33. /* 50-53 */    K_F1,    K_F2,    K_F3,    K_F4,
  34. /* 54-57 */    K_F5,    K_F6,    K_F7,    K_F8,
  35. /* 58-5b */    K_F9,    K_F10,    K_NUM,    K_HOLD,
  36. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_F11,
  37. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  38. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  39. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  40. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  41. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  42. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  43. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  44. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  45.     }, { /* shift */
  46. /* 00-03 */    '~',    '!',    '@',    '#',
  47. /* 04-07 */    '$',    '%',    '^',    '&',
  48. /* 08-0b */    '*',    '(',    ')',    '_',
  49. /* 0c-0f */    '+',    '|',    K_HOLE,    K_P0,
  50. /* 10-13 */    'Q',    'W',    'E',    'R',
  51. /* 14-17 */    'T',    'Y',    'U',    'I',
  52. /* 18-1b */    'O',    'P',    '{',    '}',
  53. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  54. /* 20-23 */    'A',    'S',    'D',    'F',
  55. /* 24-27 */    'G',    'H',    'J',    'K',
  56. /* 28-2b */    'L',    ':',    '"',    K_HOLE,
  57. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  58. /* 30-33 */    K_HOLE,    'Z',    'X',    'C',
  59. /* 34-37 */    'V',    'B',    'N',    'M',
  60. /* 38-3b */    '<',    '>',    '?',    K_HOLE,
  61. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  62. /* 40-43 */    ' ',    'H'&0x1f,    'I'&0x1f,    K_PENTER,
  63. /* 44-47 */    K_ENTER,    '['&0x1f,    '?'|0x40,    K_HOLE,
  64. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  65. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  66. /* 50-53 */    K_F11,    K_F12,    K_F13,    K_F14,
  67. /* 54-57 */    K_F15,    K_F16,    K_F17,    K_F18,
  68. /* 58-5b */    K_F19,    K_F20,    K_NUM,    K_SH_MEM,
  69. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_F11,
  70. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  71. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  72. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  73. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  74. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  75. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  76. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  77. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  78.     }, { /* altgr */
  79. /* 00-03 */    K_HOLE,    K_HOLE,    '@',    K_HOLE,
  80. /* 04-07 */    '$',    K_HOLE,    K_HOLE,    '{',
  81. /* 08-0b */    '[',    ']',    '}',    '\\',
  82. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  83. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  84. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  85. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    '~',
  86. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  87. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  88. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  89. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  90. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  91. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  92. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  93. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  94. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  95. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  96. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  97. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  98. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  99. /* 50-53 */    K(KT_CONS,12),    K(KT_CONS,13),    K(KT_CONS,14),    K(KT_CONS,15),
  100. /* 54-57 */    K(KT_CONS,16),    K(KT_CONS,17),    K(KT_CONS,18),    K(KT_CONS,19),
  101. /* 58-5b */    K(KT_CONS,20),    K(KT_CONS,21),    K_NUM,    K_SH_REGS,
  102. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K(KT_CONS,22),
  103. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  104. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  105. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  106. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  107. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  108. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  109. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  110. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  111.     }, { /* shift altgr */
  112. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  113. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  114. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  115. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  116. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  117. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  118. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  119. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  120. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  121. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  122. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  123. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  124. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  125. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  126. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  127. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  128. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  129. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  130. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  131. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  132. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  133. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  134. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  135. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  136. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  137. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  138. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  139. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  140. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  141. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  142. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  143. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  144.     }, { /* control */
  145. /* 00-03 */    '@'&0x1f,    K_HOLE,    '@'&0x1f,    '['&0x1f,
  146. /* 04-07 */    '\\'&0x1f,    ']'&0x1f,    '^'&0x1f,    '_'&0x1f,
  147. /* 08-0b */    '?'|0x40,    K_HOLE,    K_HOLE,    '_'&0x1f,
  148. /* 0c-0f */    K_HOLE,    '\\'&0x1f,    K_HOLE,    K_P0,
  149. /* 10-13 */    'Q'&0x1f,    'W'&0x1f,    'E'&0x1f,    'R'&0x1f,
  150. /* 14-17 */    'T'&0x1f,    'Y'&0x1f,    'U'&0x1f,    'I'&0x1f,
  151. /* 18-1b */    'O'&0x1f,    'P'&0x1f,    '['&0x1f,    ']'&0x1f,
  152. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  153. /* 20-23 */    'A'&0x1f,    'S'&0x1f,    'D'&0x1f,    'F'&0x1f,
  154. /* 24-27 */    'G'&0x1f,    'H'&0x1f,    'J'&0x1f,    'K'&0x1f,
  155. /* 28-2b */    'L'&0x1f,    K_HOLE,    'G'&0x1f,    K_HOLE,
  156. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  157. /* 30-33 */    K_HOLE,    'Z'&0x1f,    'X'&0x1f,    'C'&0x1f,
  158. /* 34-37 */    'V'&0x1f,    'B'&0x1f,    'N'&0x1f,    'M'&0x1f,
  159. /* 38-3b */    K_HOLE,    K_HOLE,    '?'|0x40,    K_HOLE,
  160. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  161. /* 40-43 */    '@'&0x1f,    'H'&0x1f,    K_HOLE,    K_PENTER,
  162. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  163. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  164. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  165. /* 50-53 */    K_F1,    K_F2,    K_F3,    K_F4,
  166. /* 54-57 */    K_F5,    K_F6,    K_F7,    K_F8,
  167. /* 58-5b */    K_F9,    K_F10,    K_NUM,    K_SH_STAT,
  168. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_F11,
  169. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  170. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  171. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  172. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  173. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  174. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  175. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  176. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  177.     }, { /* shift control */
  178. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  179. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  180. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  181. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  182. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  183. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  184. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  185. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  186. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  187. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  188. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  189. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  190. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  191. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  192. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  193. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  194. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  195. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  196. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  197. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  198. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  199. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  200. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  201. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  202. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  203. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  204. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  205. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  206. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  207. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  208. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  209. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  210.     }, { /* control altgr */
  211. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  212. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  213. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  214. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  215. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  216. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  217. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  218. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  219. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  220. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  221. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  222. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  223. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  224. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  225. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  226. /* 3c-3f */    K_BOOT,    K_P7,    K_P8,    K_P9,
  227. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  228. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  229. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  230. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  231. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  232. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  233. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  234. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  235. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  236. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  237. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  238. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  239. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  240. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  241. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  242. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  243.     }, { /* shift control altgr */
  244. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  245. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  246. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  247. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  248. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  249. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  250. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  251. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  252. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  253. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  254. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  255. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  256. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  257. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  258. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  259. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  260. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  261. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  262. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  263. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  264. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  265. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  266. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  267. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  268. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  269. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  270. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  271. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  272. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  273. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  274. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  275. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  276.     }, { /* alt */
  277. /* 00-03 */    K(KT_META,'`'),    K(KT_META,'1'),    K(KT_META,'2'),    K(KT_META,'3'),
  278. /* 04-07 */    K(KT_META,'4'),    K(KT_META,'5'),    K(KT_META,'6'),    K(KT_META,'7'),
  279. /* 08-0b */    K(KT_META,'8'),    K(KT_META,'9'),    K(KT_META,'0'),    K(KT_META,'-'),
  280. /* 0c-0f */    K(KT_META,'='),    K(KT_META,'\\'),    K_HOLE,    K_ASC0,
  281. /* 10-13 */    K(KT_META,'q'),    K(KT_META,'w'),    K(KT_META,'e'),    K(KT_META,'r'),
  282. /* 14-17 */    K(KT_META,'t'),    K(KT_META,'y'),    K(KT_META,'u'),    K(KT_META,'i'),
  283. /* 18-1b */    K(KT_META,'o'),    K(KT_META,'p'),    K(KT_META,'['),    K(KT_META,']'),
  284. /* 1c-1f */    K_HOLE,    K_ASC1,    K_ASC2,    K_ASC3,
  285. /* 20-23 */    K(KT_META,'a'),    K(KT_META,'s'),    K(KT_META,'d'),    K(KT_META,'f'),
  286. /* 24-27 */    K(KT_META,'g'),    K(KT_META,'h'),    K(KT_META,'j'),    K(KT_META,'k'),
  287. /* 28-2b */    K(KT_META,'l'),    K(KT_META,';'),    K(KT_META,'\''),    K_HOLE,
  288. /* 2c-2f */    K_HOLE,    K_ASC4,    K_ASC5,    K_ASC6,
  289. /* 30-33 */    K_HOLE,    K(KT_META,'z'),    K(KT_META,'x'),    K(KT_META,'c'),
  290. /* 34-37 */    K(KT_META,'v'),    K(KT_META,'b'),    K(KT_META,'n'),    K(KT_META,'m'),
  291. /* 38-3b */    K(KT_META,','),    K(KT_META,'.'),    K(KT_META,'/'),    K_HOLE,
  292. /* 3c-3f */    K_PDOT,    K_ASC7,    K_ASC8,    K_ASC9,
  293. /* 40-43 */    K(KT_META,' '),    K(KT_META,'H'&0x1f),    K(KT_META,'I'&0x1f),    K_PENTER,
  294. /* 44-47 */    K(KT_META,'M'&0x1f),    K(KT_META,'['&0x1f),    K(KT_META,'?'|0x40),    K_HOLE,
  295. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  296. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  297. /* 50-53 */    K(KT_CONS,0),    K(KT_CONS,1),    K(KT_CONS,2),    K(KT_CONS,3),
  298. /* 54-57 */    K(KT_CONS,4),    K(KT_CONS,5),    K(KT_CONS,6),    K(KT_CONS,7),
  299. /* 58-5b */    K(KT_CONS,8),    K(KT_CONS,9),    K_NUM,    K_HOLD,
  300. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K(KT_CONS,10),
  301. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  302. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  303. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  304. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  305. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  306. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  307. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  308. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  309.     }, { /* shift alt */
  310. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  311. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  312. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  313. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  314. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  315. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  316. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  317. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  318. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  319. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  320. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  321. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  322. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  323. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  324. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  325. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  326. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  327. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  328. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  329. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  330. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  331. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  332. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  333. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  334. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  335. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  336. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  337. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  338. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  339. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  340. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  341. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  342.     }, { /* alt altgr */
  343. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  344. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  345. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  346. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  347. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  348. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  349. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  350. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  351. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  352. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  353. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  354. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  355. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  356. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  357. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  358. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  359. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  360. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  361. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  362. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  363. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  364. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  365. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  366. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  367. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  368. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  369. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  370. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  371. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  372. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  373. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  374. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  375.     }, { /* shift alt altgr */
  376. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  377. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  378. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  379. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  380. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  381. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  382. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  383. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  384. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  385. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  386. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  387. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  388. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  389. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  390. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  391. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  392. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  393. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  394. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  395. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  396. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  397. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  398. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  399. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  400. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  401. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  402. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  403. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  404. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  405. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  406. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  407. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  408.     }, { /* control alt */
  409. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  410. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  411. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  412. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  413. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  414. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  415. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  416. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  417. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  418. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  419. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  420. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  421. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  422. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  423. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  424. /* 3c-3f */    K_BOOT,    K_P7,    K_P8,    K_P9,
  425. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  426. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  427. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  428. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  429. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  430. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  431. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  432. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  433. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  434. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  435. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  436. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  437. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  438. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  439. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  440. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  441.     }, { /* shift control alt */
  442. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  443. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  444. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  445. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  446. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  447. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  448. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  449. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  450. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  451. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  452. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  453. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  454. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  455. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  456. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  457. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  458. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  459. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  460. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  461. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  462. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  463. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  464. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  465. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  466. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  467. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  468. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  469. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  470. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  471. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  472. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  473. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  474.     }, { /* control alt altgr */
  475. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  476. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  477. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  478. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  479. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  480. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  481. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  482. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  483. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  484. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  485. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  486. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  487. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  488. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  489. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  490. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  491. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  492. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  493. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  494. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  495. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  496. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  497. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  498. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  499. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  500. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  501. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  502. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  503. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  504. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  505. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  506. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  507.     }, { /* shift control alt altgr */
  508. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  509. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  510. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  511. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_P0,
  512. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  513. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  514. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  515. /* 1c-1f */    K_HOLE,    K_P1,    K_P2,    K_P3,
  516. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  517. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  518. /* 28-2b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  519. /* 2c-2f */    K_HOLE,    K_P4,    K_P5,    K_P6,
  520. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  521. /* 34-37 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  522. /* 38-3b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  523. /* 3c-3f */    K_PDOT,    K_P7,    K_P8,    K_P9,
  524. /* 40-43 */    K_HOLE,    'H'&0x1f,    K_HOLE,    K_PENTER,
  525. /* 44-47 */    K_ENTER,    K_HOLE,    K_HOLE,    K_HOLE,
  526. /* 48-4b */    K_HOLE,    K_HOLE,    K_PMINUS,    K_HOLE,
  527. /* 4c-4f */    K_UP,    K_DOWN,    K_RIGHT,    K_LEFT,
  528. /* 50-53 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  529. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  530. /* 58-5b */    K_HOLE,    K_HOLE,    K_NUM,    K_HOLE,
  531. /* 5c-5f */    K_PSLASH,    K_PSTAR,    K_PPLUS,    K_HOLE,
  532. /* 60-63 */    K_SHIFT,    K_SHIFT,    K_CAPS,    K_CTRL,
  533. /* 64-67 */    K_ALT,    K_ALTGR,    K_HOLE,    K_HOLE,
  534. /* 68-6b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  535. /* 6c-6f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  536. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  537. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  538. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  539. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  540.     },
  541. };
  542.  
  543. #elif defined(CONFIG_ATARI)
  544. /* (permutation array was ata_kmap) */
  545.  
  546. /*
  547.  * ++roman: The following changes were applied manually:
  548.  *
  549.  *  - The Alt (= Meta) key works in combination with Shift and Control, e.g. Alt+Shift+a sends Meta-A (0xc1),
  550.  *    Alt+Control+A sends Meta-Ctrl-A (0x81) ...
  551.  *
  552.  *  - The parentheses on the keypad send '(' and ')' with all modifiers (as would do e.g. keypad '+'), but they cannot
  553.  *    be used as application keys (i.e. sending Esc O c).
  554.  *
  555.  *  - HELP and UNDO are mapped to be F11 and F12, resp. This way, applications that allow their own keyboard mappings
  556.  *    (e.g. tcsh, X Windows) can be configured to use them in the way the Label suggests (providing help or undoing).
  557.  *
  558.  *  - Console switching is done with Alt+Fx (consoles 1..10) and Shift+Alt+Fx (consoles 11..20).
  559.  *
  560.  *  - The misc. special function implemented in the kernel are mapped to the following key combinations:
  561.  *
  562.  *      ClrHome          -> Home/Find
  563.  *      Shift + ClrHome  -> End/Select
  564.  *      Shift + Up       -> Page Up
  565.  *      Shift + Down     -> Page Down
  566.  *      Alt + Help       -> show system status
  567.  *      Shift + Help     -> show memory info
  568.  *      Ctrl + Help      -> show registers
  569.  *      Ctrl + Alt + Del -> Reboot
  570.  *      Alt + Undo       -> switch to last console
  571.  *      Shift + Undo     -> send interrupt
  572.  *      Alt + Insert     -> stop/start output (same as ^S/^Q)
  573.  *      Alt + Up         -> Scroll back console (if implemented)
  574.  *      Alt + Down       -> Scroll forward console (if implemented)
  575.  *
  576.  */
  577.  
  578. u_short key_map[NR_KEYMAPS][NR_KEYS] = {
  579.     { /* no modifiers */
  580. /* 00-03 */    K_HOLE,    '['&0x1f,    '1',    '2',
  581. /* 04-07 */    '3',    '4',    '5',    '6',
  582. /* 08-0b */    '7',    '8',    '9',    '0',
  583. /* 0c-0f */    '-',    '=',    'H'&0x1f,    'I'&0x1f,
  584. /* 10-13 */    'q',    'w',    'e',    'r',
  585. /* 14-17 */    't',    'y',    'u',    'i',
  586. /* 18-1b */    'o',    'p',    '[',    ']',
  587. /* 1c-1f */    K_ENTER,    K_CTRL,    'a',    's',
  588. /* 20-23 */    'd',    'f',    'g',    'h',
  589. /* 24-27 */    'j',    'k',    'l',    ';',
  590. /* 28-2b */    '\'',    '`',    K_SHIFT,    '\\',
  591. /* 2c-2f */    'z',    'x',    'c',    'v',
  592. /* 30-33 */    'b',    'n',    'm',    ',',
  593. /* 34-37 */    '.',    '/',    K_SHIFT,    K_HOLE,
  594. /* 38-3b */    K_ALT,    ' ',    K_CAPS,    K_F1,
  595. /* 3c-3f */    K_F2,    K_F3,    K_F4,    K_F5,
  596. /* 40-43 */    K_F6,    K_F7,    K_F8,    K_F9,
  597. /* 44-47 */    K_F10,    K_HOLE,    K_HOLE,    K_FIND,
  598. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  599. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  600. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    '?'|0x40,
  601. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  602. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  603. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  604. /* 60-63 */    K_HOLE,    K_F12,    K_F11,    '(',
  605. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  606. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  607. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  608. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  609. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  610. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  611. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  612.     }, { /* shift */
  613. /* 00-03 */    K_HOLE,    '['&0x1f,    '!',    '@',
  614. /* 04-07 */    '#',    '$',    '%',    '^',
  615. /* 08-0b */    '&',    '*',    '(',    ')',
  616. /* 0c-0f */    '_',    '+',    'H'&0x1f,    'I'&0x1f,
  617. /* 10-13 */    'Q',    'W',    'E',    'R',
  618. /* 14-17 */    'T',    'Y',    'U',    'I',
  619. /* 18-1b */    'O',    'P',    '{',    '}',
  620. /* 1c-1f */    K_ENTER,    K_CTRL,    'A',    'S',
  621. /* 20-23 */    'D',    'F',    'G',    'H',
  622. /* 24-27 */    'J',    'K',    'L',    ':',
  623. /* 28-2b */    '"',    '~',    K_SHIFT,    '|',
  624. /* 2c-2f */    'Z',    'X',    'C',    'V',
  625. /* 30-33 */    'B',    'N',    'M',    '<',
  626. /* 34-37 */    '>',    '?',    K_SHIFT,    K_HOLE,
  627. /* 38-3b */    K_ALT,    ' ',    K_CAPS,    K_F11,
  628. /* 3c-3f */    K_F12,    K_F13,    K_F14,    K_F15,
  629. /* 40-43 */    K_F16,    K_F17,    K_F18,    K_F19,
  630. /* 44-47 */    K_F20,    K_HOLE,    K_HOLE,    K_SELECT,
  631. /* 48-4b */    K_PGUP,    K_HOLE,    K_PMINUS,    K_LEFT,
  632. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  633. /* 50-53 */    K_PGDN,    K_HOLE,    K_INSERT,    '?'|0x40,
  634. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  635. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  636. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  637. /* 60-63 */    K_HOLE,    K_BREAK,    K_SH_MEM,    '(',
  638. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  639. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  640. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  641. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  642. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  643. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  644. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  645.     }, { /* altgr */ /* this can't happen on Atari (no AltGr key!) */
  646. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    '@',
  647. /* 04-07 */    K_HOLE,    '$',    K_HOLE,    K_HOLE,
  648. /* 08-0b */    '{',    '[',    ']',    '}',
  649. /* 0c-0f */    '\\',    K_HOLE,    'H'&0x1f,    K_HOLE,
  650. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  651. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  652. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    '~',
  653. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  654. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  655. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  656. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  657. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  658. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  659. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  660. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K(KT_CONS,12),
  661. /* 3c-3f */    K(KT_CONS,13),    K(KT_CONS,14),    K(KT_CONS,15),    K(KT_CONS,16),
  662. /* 40-43 */    K(KT_CONS,17),    K(KT_CONS,18),    K(KT_CONS,19),    K(KT_CONS,20),
  663. /* 44-47 */    K(KT_CONS,21),    K_HOLE,    K_HOLE,    K_FIND,
  664. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  665. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  666. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  667. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  668. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  669. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  670. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  671. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  672. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  673. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  674. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  675. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  676. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  677. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  678.     }, { /* shift altgr */ /* this can't happen on Atari (no AltGr key!) */
  679. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  680. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  681. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  682. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  683. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  684. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  685. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  686. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  687. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  688. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  689. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  690. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  691. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  692. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  693. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  694. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  695. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  696. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  697. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  698. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  699. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  700. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  701. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  702. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  703. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  704. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  705. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  706. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  707. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  708. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  709. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  710. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  711.     }, { /* control */
  712. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    '@'&0x1f,
  713. /* 04-07 */    '['&0x1f,    '\\'&0x1f,    ']'&0x1f,    '^'&0x1f,
  714. /* 08-0b */    '_'&0x1f,    '?'|0x40,    K_HOLE,    K_HOLE,
  715. /* 0c-0f */    '_'&0x1f,    K_HOLE,    'H'&0x1f,    K_HOLE,
  716. /* 10-13 */    'Q'&0x1f,    'W'&0x1f,    'E'&0x1f,    'R'&0x1f,
  717. /* 14-17 */    'T'&0x1f,    'Y'&0x1f,    'U'&0x1f,    'I'&0x1f,
  718. /* 18-1b */    'O'&0x1f,    'P'&0x1f,    '['&0x1f,    ']'&0x1f,
  719. /* 1c-1f */    K_ENTER,    K_CTRL,    'A'&0x1f,    'S'&0x1f,
  720. /* 20-23 */    'D'&0x1f,    'F'&0x1f,    'G'&0x1f,    'H'&0x1f,
  721. /* 24-27 */    'J'&0x1f,    'K'&0x1f,    'L'&0x1f,    K_HOLE,
  722. /* 28-2b */    'G'&0x1f,    '@'&0x1f,    K_SHIFT,    '\\'&0x1f,
  723. /* 2c-2f */    'Z'&0x1f,    'X'&0x1f,    'C'&0x1f,    'V'&0x1f,
  724. /* 30-33 */    'B'&0x1f,    'N'&0x1f,    'M'&0x1f,    K_HOLE,
  725. /* 34-37 */    K_HOLE,    '?'|0x40,    K_SHIFT,    K_HOLE,
  726. /* 38-3b */    K_ALT,    '@'&0x1f,    K_CAPS,    K_F1,
  727. /* 3c-3f */    K_F2,    K_F3,    K_F4,    K_F5,
  728. /* 40-43 */    K_F6,    K_F7,    K_F8,    K_F9,
  729. /* 44-47 */    K_F10,    K_HOLE,    K_HOLE,    K_FIND,
  730. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  731. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  732. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  733. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  734. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  735. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  736. /* 60-63 */    K_HOLE,    K_HOLE,    K_SH_REGS,    '(',
  737. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  738. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  739. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  740. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  741. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  742. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  743. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  744.     }, { /* shift control */
  745. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  746. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  747. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  748. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  749. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  750. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  751. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  752. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  753. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  754. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  755. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  756. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  757. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  758. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  759. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  760. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  761. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  762. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  763. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  764. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  765. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  766. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  767. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  768. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  769. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    '(',
  770. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  771. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  772. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  773. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  774. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  775. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  776. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  777.     }, { /* control altgr */ /* this can't happen on Atari (no AltGr key!) */
  778. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  779. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  780. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  781. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  782. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  783. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  784. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  785. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  786. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  787. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  788. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  789. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  790. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  791. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  792. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  793. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  794. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  795. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  796. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  797. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  798. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  799. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  800. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  801. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  802. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  803. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  804. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  805. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  806. /* 70-73 */    K_P0,    K_BOOT,    K_PENTER,    K_HOLE,
  807. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  808. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  809. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  810.     }, { /* shift control altgr */ /* this can't happen on Atari (no AltGr key!) */
  811. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  812. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  813. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  814. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  815. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  816. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  817. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  818. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  819. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  820. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  821. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  822. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  823. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  824. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  825. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  826. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  827. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  828. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  829. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  830. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  831. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  832. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  833. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  834. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  835. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  836. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  837. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  838. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  839. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  840. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  841. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  842. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  843.     }, { /* alt */
  844. /* 00-03 */    K_HOLE,    K(KT_META,'['&0x1f),    K(KT_META,'1'),    K(KT_META,'2'),
  845. /* 04-07 */    K(KT_META,'3'),    K(KT_META,'4'),    K(KT_META,'5'),    K(KT_META,'6'),
  846. /* 08-0b */    K(KT_META,'7'),    K(KT_META,'8'),    K(KT_META,'9'),    K(KT_META,'0'),
  847. /* 0c-0f */    K(KT_META,'-'),    K(KT_META,'='),    K(KT_META,'H'&0x1f),    K(KT_META,'I'&0x1f),
  848. /* 10-13 */    K(KT_META,'q'),    K(KT_META,'w'),    K(KT_META,'e'),    K(KT_META,'r'),
  849. /* 14-17 */    K(KT_META,'t'),    K(KT_META,'y'),    K(KT_META,'u'),    K(KT_META,'i'),
  850. /* 18-1b */    K(KT_META,'o'),    K(KT_META,'p'),    K(KT_META,'['),    K(KT_META,']'),
  851. /* 1c-1f */    K(KT_META,'M'&0x1f),    K_CTRL,    K(KT_META,'a'),    K(KT_META,'s'),
  852. /* 20-23 */    K(KT_META,'d'),    K(KT_META,'f'),    K(KT_META,'g'),    K(KT_META,'h'),
  853. /* 24-27 */    K(KT_META,'j'),    K(KT_META,'k'),    K(KT_META,'l'),    K(KT_META,';'),
  854. /* 28-2b */    K(KT_META,'\''),    K(KT_META,'`'),    K_SHIFT,    K(KT_META,'\\'),
  855. /* 2c-2f */    K(KT_META,'z'),    K(KT_META,'x'),    K(KT_META,'c'),    K(KT_META,'v'),
  856. /* 30-33 */    K(KT_META,'b'),    K(KT_META,'n'),    K(KT_META,'m'),    K(KT_META,','),
  857. /* 34-37 */    K(KT_META,'.'),    K(KT_META,'/'),    K_SHIFT,    K_HOLE,
  858. /* 38-3b */    K_ALT,    K(KT_META,' '),    K_CAPS,    K(KT_CONS,0),
  859. /* 3c-3f */    K(KT_CONS,1),    K(KT_CONS,2),    K(KT_CONS,3),    K(KT_CONS,4),
  860. /* 40-43 */    K(KT_CONS,5),    K(KT_CONS,6),    K(KT_CONS,7),    K(KT_CONS,8),
  861. /* 44-47 */    K(KT_CONS,9),    K_HOLE,    K_HOLE,    K_FIND,
  862. /* 48-4b */    K_SCROLLBACK,    K_HOLE,    K_PMINUS,    K_LEFT,
  863. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  864. /* 50-53 */    K_SCROLLFORW,    K_HOLE,    K_HOLD,    K(KT_META,'?'|0x40),
  865. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  866. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  867. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  868. /* 60-63 */    K_HOLE,    K_CONS,    K_SH_STAT,    '(',
  869. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_ASC7,
  870. /* 68-6b */    K_ASC8,    K_ASC9,    K_ASC4,    K_ASC5,
  871. /* 6c-6f */    K_ASC6,    K_ASC1,    K_ASC2,    K_ASC3,
  872. /* 70-73 */    K_ASC0,    K_PDOT,    K_PENTER,    K_HOLE,
  873. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  874. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  875. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  876.     }, { /* shift alt */
  877. /* 00-03 */    K_HOLE,    K(KT_META,'['&0x1f),    K(KT_META,'!'),    K(KT_META,'@'),
  878. /* 04-07 */    K(KT_META,'#'),    K(KT_META,'$'),    K(KT_META,'%'),    K(KT_META,'^'),
  879. /* 08-0b */    K(KT_META,'&'),    K(KT_META,'*'),    K(KT_META,'('),    K(KT_META,')'),
  880. /* 0c-0f */    K(KT_META,'_'),    K(KT_META,'+'),    K(KT_META,'H'&0x1f),    K(KT_META,'I'&0x1f),
  881. /* 10-13 */    K(KT_META,'Q'),    K(KT_META,'W'),    K(KT_META,'E'),    K(KT_META,'R'),
  882. /* 14-17 */    K(KT_META,'T'),    K(KT_META,'Y'),    K(KT_META,'U'),    K(KT_META,'I'),
  883. /* 18-1b */    K(KT_META,'O'),    K(KT_META,'P'),    K(KT_META,'{'),    K(KT_META,'}'),
  884. /* 1c-1f */    K(KT_META,K_ENTER),    K_CTRL,    K(KT_META,'A'),    K(KT_META,'S'),
  885. /* 20-23 */    K(KT_META,'D'),    K(KT_META,'F'),    K(KT_META,'G'),    K(KT_META,'H'),
  886. /* 24-27 */    K(KT_META,'J'),    K(KT_META,'K'),    K(KT_META,'L'),    K(KT_META,':'),
  887. /* 28-2b */    K(KT_META,'"'),    K(KT_META,'~'),    K_SHIFT,    K(KT_META,'|'),
  888. /* 2c-2f */    K(KT_META,'Z'),    K(KT_META,'X'),    K(KT_META,'C'),    K(KT_META,'V'),
  889. /* 30-33 */    K(KT_META,'B'),    K(KT_META,'N'),    K(KT_META,'M'),    K(KT_META,'<'),
  890. /* 34-37 */    K(KT_META,'>'),    K(KT_META,'?'),    K_SHIFT,    K_HOLE,
  891. /* 38-3b */    K_ALT,    K(KT_META,' '),    K_CAPS,    K(KT_CONS,10),
  892. /* 3c-3f */    K(KT_CONS,11),    K(KT_CONS,12),    K(KT_CONS,13),    K(KT_CONS,14),
  893. /* 40-43 */    K(KT_CONS,15),    K(KT_CONS,16),    K(KT_CONS,17),    K(KT_CONS,18),
  894. /* 44-47 */    K(KT_CONS,19),    K_HOLE,    K_HOLE,    K_SELECT,
  895. /* 48-4b */    K_PGUP,    K_HOLE,    K_PMINUS,    K_LEFT,
  896. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  897. /* 50-53 */    K_PGDN,    K_HOLE,    K_INSERT,    K(KT_META,'?'|0x40),
  898. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  899. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  900. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  901. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    '(',
  902. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  903. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  904. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  905. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  906. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  907. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  908. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  909.     }, { /* alt altgr */ /* this can't happen on Atari (no AltGr key!) */
  910. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  911. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  912. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  913. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  914. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  915. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  916. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  917. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  918. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  919. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  920. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  921. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  922. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  923. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  924. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  925. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  926. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  927. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  928. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  929. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  930. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  931. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  932. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  933. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  934. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  935. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  936. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  937. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  938. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  939. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  940. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  941. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  942.     }, { /* shift alt altgr */ /* this can't happen on Atari (no AltGr key!) */
  943. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  944. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  945. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  946. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  947. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  948. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  949. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  950. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  951. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  952. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  953. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  954. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  955. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  956. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  957. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  958. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  959. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  960. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  961. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  962. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  963. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  964. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  965. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  966. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  967. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  968. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  969. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  970. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  971. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  972. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  973. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  974. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  975.     }, { /* control alt */
  976. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K(KT_META,'@'&0x1f),
  977. /* 04-07 */    K(KT_META,'['&0x1f),    K(KT_META,'\\'&0x1f),    K(KT_META,']'&0x1f),    K(KT_META,'^'&0x1f),
  978. /* 08-0b */    K(KT_META,'_'&0x1f),    K(KT_META,'?'|0x40),    K_HOLE,    K_HOLE,
  979. /* 0c-0f */    K(KT_META,'_'&0x1f),    K_HOLE,    K(KT_META,'H'&0x1f),    K_HOLE,
  980. /* 10-13 */    K(KT_META,'Q'&0x1f),    K(KT_META,'W'&0x1f),    K(KT_META,'E'&0x1f),    K(KT_META,'R'&0x1f),
  981. /* 14-17 */    K(KT_META,'T'&0x1f),    K(KT_META,'Y'&0x1f),    K(KT_META,'U'&0x1f),    K(KT_META,'I'&0x1f),
  982. /* 18-1b */    K(KT_META,'O'&0x1f),    K(KT_META,'P'&0x1f),    K(KT_META,'['&0x1f),    K(KT_META,']'&0x1f),
  983. /* 1c-1f */    K(KT_META,K_ENTER),    K_CTRL,    K(KT_META,'A'&0x1f),    K(KT_META,'S'&0x1f),
  984. /* 20-23 */    K(KT_META,'D'&0x1f),    K(KT_META,'F'&0x1f),    K(KT_META,'G'&0x1f),    K(KT_META,'H'&0x1f),
  985. /* 24-27 */    K(KT_META,'J'&0x1f),    K(KT_META,'K'&0x1f),    K(KT_META,'L'&0x1f),    K_HOLE,
  986. /* 28-2b */    K(KT_META,'G'&0x1f),    K(KT_META,'@'&0x1f),    K_SHIFT,    K(KT_META,'\\'&0x1f),
  987. /* 2c-2f */    K(KT_META,'Z'&0x1f),    K(KT_META,'X'&0x1f),    K(KT_META,'C'&0x1f),    K(KT_META,'V'&0x1f),
  988. /* 30-33 */    K(KT_META,'B'&0x1f),    K(KT_META,'N'&0x1f),    K(KT_META,'M'&0x1f),    K_HOLE,
  989. /* 34-37 */    K_HOLE,    K(KT_META,'?'|0x40),    K_SHIFT,    K_HOLE,
  990. /* 38-3b */    K_ALT,    K(KT_META,'@'&0x1f),    K_CAPS,    K_F1,
  991. /* 3c-3f */    K_F2,    K_F3,    K_F4,    K_F5,
  992. /* 40-43 */    K_F6,    K_F7,    K_F8,    K_F9,
  993. /* 44-47 */    K_F10,    K_HOLE,    K_HOLE,    K_FIND,
  994. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  995. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  996. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_BOOT,
  997. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  998. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  999. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1000. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    '(',
  1001. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  1002. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  1003. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  1004. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  1005. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1006. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1007. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1008.     }, { /* shift control alt */
  1009. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1010. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1011. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1012. /* 0c-0f */    K_HOLE,    K_HOLE,    K(KT_META,'H'&0x1f),    K_HOLE,
  1013. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1014. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1015. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1016. /* 1c-1f */    K(KT_META,K_ENTER),    K_CTRL,    K_HOLE,    K_HOLE,
  1017. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1018. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1019. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1020. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1021. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1022. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1023. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1024. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1025. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1026. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  1027. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  1028. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  1029. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  1030. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1031. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1032. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1033. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    '(',
  1034. /* 64-67 */    ')',    K_PSLASH,    K_PSTAR,    K_P7,
  1035. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  1036. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  1037. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  1038. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1039. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1040. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1041.     }, { /* control alt altgr */ /* this can't happen on Atari (no AltGr key!) */
  1042. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1043. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1044. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1045. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  1046. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1047. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1048. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1049. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1050. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1051. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1052. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1053. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1054. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1055. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1056. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1057. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1058. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1059. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  1060. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  1061. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  1062. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  1063. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1064. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1065. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1066. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1067. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  1068. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  1069. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  1070. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  1071. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1072. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1073. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1074.     }, { /* shift control alt altgr */ /* this can't happen on Atari (no AltGr key!) */
  1075. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1076. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1077. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1078. /* 0c-0f */    K_HOLE,    K_HOLE,    'H'&0x1f,    K_HOLE,
  1079. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1080. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1081. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1082. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1083. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1084. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1085. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1086. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1087. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1088. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1089. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1090. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1091. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1092. /* 44-47 */    K_HOLE,    K_HOLE,    K_HOLE,    K_FIND,
  1093. /* 48-4b */    K_UP,    K_HOLE,    K_PMINUS,    K_LEFT,
  1094. /* 4c-4f */    K_HOLE,    K_RIGHT,    K_PPLUS,    K_HOLE,
  1095. /* 50-53 */    K_DOWN,    K_HOLE,    K_INSERT,    K_HOLE,
  1096. /* 54-57 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1097. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1098. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1099. /* 60-63 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1100. /* 64-67 */    K_HOLE,    K_PSLASH,    K_PSTAR,    K_P7,
  1101. /* 68-6b */    K_P8,    K_P9,    K_P4,    K_P5,
  1102. /* 6c-6f */    K_P6,    K_P1,    K_P2,    K_P3,
  1103. /* 70-73 */    K_P0,    K_PDOT,    K_PENTER,    K_HOLE,
  1104. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1105. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1106. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1107.     },
  1108. };
  1109.  
  1110. #else
  1111. /* (original PC mapping, no permutation) */
  1112.  
  1113. u_short key_map[NR_KEYMAPS][NR_KEYS] = {
  1114.     { /* no modifiers */
  1115. /* 00-03 */    K_HOLE,    '['&0x1f,    '1',    '2',
  1116. /* 04-07 */    '3',    '4',    '5',    '6',
  1117. /* 08-0b */    '7',    '8',    '9',    '0',
  1118. /* 0c-0f */    '-',    '=',    '?'|0x40,    'I'&0x1f,
  1119. /* 10-13 */    'q',    'w',    'e',    'r',
  1120. /* 14-17 */    't',    'y',    'u',    'i',
  1121. /* 18-1b */    'o',    'p',    '[',    ']',
  1122. /* 1c-1f */    K_ENTER,    K_CTRL,    'a',    's',
  1123. /* 20-23 */    'd',    'f',    'g',    'h',
  1124. /* 24-27 */    'j',    'k',    'l',    ';',
  1125. /* 28-2b */    '\'',    '`',    K_SHIFT,    '\\',
  1126. /* 2c-2f */    'z',    'x',    'c',    'v',
  1127. /* 30-33 */    'b',    'n',    'm',    ',',
  1128. /* 34-37 */    '.',    '/',    K_SHIFT,    K_PSTAR,
  1129. /* 38-3b */    K_ALT,    ' ',    K_CAPS,    K_F1,
  1130. /* 3c-3f */    K_F2,    K_F3,    K_F4,    K_F5,
  1131. /* 40-43 */    K_F6,    K_F7,    K_F8,    K_F9,
  1132. /* 44-47 */    K_F10,    K_NUM,    K_HOLD,    K_P7,
  1133. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1134. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1135. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1136. /* 54-57 */    K_CONS,    K_HOLE,    '<',    K_F11,
  1137. /* 58-5b */    K_F12,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1138. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1139. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    '\\'&0x1f,
  1140. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1141. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1142. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1143. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1144. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1145. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1146. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1147.     }, { /* shift */
  1148. /* 00-03 */    K_HOLE,    '['&0x1f,    '!',    '@',
  1149. /* 04-07 */    '#',    '$',    '%',    '^',
  1150. /* 08-0b */    '&',    '*',    '(',    ')',
  1151. /* 0c-0f */    '_',    '+',    '?'|0x40,    'I'&0x1f,
  1152. /* 10-13 */    'Q',    'W',    'E',    'R',
  1153. /* 14-17 */    'T',    'Y',    'U',    'I',
  1154. /* 18-1b */    'O',    'P',    '{',    '}',
  1155. /* 1c-1f */    K_ENTER,    K_CTRL,    'A',    'S',
  1156. /* 20-23 */    'D',    'F',    'G',    'H',
  1157. /* 24-27 */    'J',    'K',    'L',    ':',
  1158. /* 28-2b */    '"',    '~',    K_SHIFT,    '|',
  1159. /* 2c-2f */    'Z',    'X',    'C',    'V',
  1160. /* 30-33 */    'B',    'N',    'M',    '<',
  1161. /* 34-37 */    '>',    '?',    K_SHIFT,    K_PSTAR,
  1162. /* 38-3b */    K_ALT,    ' ',    K_CAPS,    K_F11,
  1163. /* 3c-3f */    K_F12,    K_F13,    K_F14,    K_F15,
  1164. /* 40-43 */    K_F16,    K_F17,    K_F18,    K_F19,
  1165. /* 44-47 */    K_F20,    K_NUM,    K_SH_MEM,    K_P7,
  1166. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1167. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1168. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1169. /* 54-57 */    K_CONS,    K_HOLE,    '>',    K_F11,
  1170. /* 58-5b */    K_F12,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1171. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1172. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1173. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1174. /* 68-6b */    K_SCROLLBACK,    K_LEFT,    K_RIGHT,    K_SELECT,
  1175. /* 6c-6f */    K_DOWN,    K_SCROLLFORW,    K_INSERT,    K_REMOVE,
  1176. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1177. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1178. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1179. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1180.     }, { /* altgr */
  1181. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    '@',
  1182. /* 04-07 */    K_HOLE,    '$',    K_HOLE,    K_HOLE,
  1183. /* 08-0b */    '{',    '[',    ']',    '}',
  1184. /* 0c-0f */    '\\',    K_HOLE,    K_HOLE,    K_HOLE,
  1185. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1186. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1187. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    '~',
  1188. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1189. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1190. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1191. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1192. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1193. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1194. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1195. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K(KT_CONS,12),
  1196. /* 3c-3f */    K(KT_CONS,13),    K(KT_CONS,14),    K(KT_CONS,15),    K(KT_CONS,16),
  1197. /* 40-43 */    K(KT_CONS,17),    K(KT_CONS,18),    K(KT_CONS,19),    K(KT_CONS,20),
  1198. /* 44-47 */    K(KT_CONS,21),    K_NUM,    K_SH_REGS,    K_P7,
  1199. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1200. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1201. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1202. /* 54-57 */    K_CONS,    K_HOLE,    '|',    K(KT_CONS,22),
  1203. /* 58-5b */    K(KT_CONS,23),    K_HOLE,    K_HOLE,    'H'&0x1f,
  1204. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1205. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1206. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1207. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1208. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1209. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1210. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1211. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1212. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1213.     }, { /* shift altgr */
  1214. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1215. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1216. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1217. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1218. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1219. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1220. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1221. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1222. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1223. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1224. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1225. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1226. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1227. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1228. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1229. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1230. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1231. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1232. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1233. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1234. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1235. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1236. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1237. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1238. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1239. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1240. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1241. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1242. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1243. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1244. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1245. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1246.     }, { /* control */
  1247. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    '@'&0x1f,
  1248. /* 04-07 */    '['&0x1f,    '\\'&0x1f,    ']'&0x1f,    '^'&0x1f,
  1249. /* 08-0b */    '_'&0x1f,    '?'|0x40,    K_HOLE,    K_HOLE,
  1250. /* 0c-0f */    '_'&0x1f,    K_HOLE,    K_HOLE,    K_HOLE,
  1251. /* 10-13 */    'Q'&0x1f,    'W'&0x1f,    'E'&0x1f,    'R'&0x1f,
  1252. /* 14-17 */    'T'&0x1f,    'Y'&0x1f,    'U'&0x1f,    'I'&0x1f,
  1253. /* 18-1b */    'O'&0x1f,    'P'&0x1f,    '['&0x1f,    ']'&0x1f,
  1254. /* 1c-1f */    K_ENTER,    K_CTRL,    'A'&0x1f,    'S'&0x1f,
  1255. /* 20-23 */    'D'&0x1f,    'F'&0x1f,    'G'&0x1f,    'H'&0x1f,
  1256. /* 24-27 */    'J'&0x1f,    'K'&0x1f,    'L'&0x1f,    K_HOLE,
  1257. /* 28-2b */    'G'&0x1f,    '@'&0x1f,    K_SHIFT,    '\\'&0x1f,
  1258. /* 2c-2f */    'Z'&0x1f,    'X'&0x1f,    'C'&0x1f,    'V'&0x1f,
  1259. /* 30-33 */    'B'&0x1f,    'N'&0x1f,    'M'&0x1f,    K_HOLE,
  1260. /* 34-37 */    K_HOLE,    '?'|0x40,    K_SHIFT,    K_PSTAR,
  1261. /* 38-3b */    K_ALT,    '@'&0x1f,    K_CAPS,    K_F1,
  1262. /* 3c-3f */    K_F2,    K_F3,    K_F4,    K_F5,
  1263. /* 40-43 */    K_F6,    K_F7,    K_F8,    K_F9,
  1264. /* 44-47 */    K_F10,    K_NUM,    K_SH_STAT,    K_P7,
  1265. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1266. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1267. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1268. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_F11,
  1269. /* 58-5b */    K_F12,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1270. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1271. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    '\\'&0x1f,
  1272. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1273. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1274. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1275. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1276. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1277. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1278. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1279.     }, { /* shift control */
  1280. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1281. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1282. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1283. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1284. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1285. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1286. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1287. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1288. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1289. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1290. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1291. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1292. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1293. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1294. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1295. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1296. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1297. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1298. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1299. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1300. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1301. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1302. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1303. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1304. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1305. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1306. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1307. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1308. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1309. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1310. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1311. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1312.     }, { /* control altgr */
  1313. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1314. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1315. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1316. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1317. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1318. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1319. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1320. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1321. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1322. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1323. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1324. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1325. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1326. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1327. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1328. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1329. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1330. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1331. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1332. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1333. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_BOOT,
  1334. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1335. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1336. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1337. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1338. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1339. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1340. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_BOOT,
  1341. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1342. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1343. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1344. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1345.     }, { /* shift control altgr */
  1346. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1347. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1348. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1349. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1350. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1351. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1352. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1353. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1354. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1355. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1356. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1357. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1358. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1359. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1360. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1361. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1362. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1363. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1364. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1365. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1366. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1367. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1368. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1369. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1370. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1371. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1372. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1373. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1374. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1375. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1376. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1377. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1378.     }, { /* alt */
  1379. /* 00-03 */    K_HOLE,    K(KT_META,'['&0x1f),    K(KT_META,'1'),    K(KT_META,'2'),
  1380. /* 04-07 */    K(KT_META,'3'),    K(KT_META,'4'),    K(KT_META,'5'),    K(KT_META,'6'),
  1381. /* 08-0b */    K(KT_META,'7'),    K(KT_META,'8'),    K(KT_META,'9'),    K(KT_META,'0'),
  1382. /* 0c-0f */    K(KT_META,'-'),    K(KT_META,'='),    K(KT_META,'?'|0x40),    K(KT_META,'I'&0x1f),
  1383. /* 10-13 */    K(KT_META,'q'),    K(KT_META,'w'),    K(KT_META,'e'),    K(KT_META,'r'),
  1384. /* 14-17 */    K(KT_META,'t'),    K(KT_META,'y'),    K(KT_META,'u'),    K(KT_META,'i'),
  1385. /* 18-1b */    K(KT_META,'o'),    K(KT_META,'p'),    K(KT_META,'['),    K(KT_META,']'),
  1386. /* 1c-1f */    K(KT_META,'M'&0x1f),    K_CTRL,    K(KT_META,'a'),    K(KT_META,'s'),
  1387. /* 20-23 */    K(KT_META,'d'),    K(KT_META,'f'),    K(KT_META,'g'),    K(KT_META,'h'),
  1388. /* 24-27 */    K(KT_META,'j'),    K(KT_META,'k'),    K(KT_META,'l'),    K(KT_META,';'),
  1389. /* 28-2b */    K(KT_META,'\''),    K(KT_META,'`'),    K_SHIFT,    K(KT_META,'\\'),
  1390. /* 2c-2f */    K(KT_META,'z'),    K(KT_META,'x'),    K(KT_META,'c'),    K(KT_META,'v'),
  1391. /* 30-33 */    K(KT_META,'b'),    K(KT_META,'n'),    K(KT_META,'m'),    K(KT_META,','),
  1392. /* 34-37 */    K(KT_META,'.'),    K(KT_META,'/'),    K_SHIFT,    K_PSTAR,
  1393. /* 38-3b */    K_ALT,    K(KT_META,' '),    K_CAPS,    K(KT_CONS,0),
  1394. /* 3c-3f */    K(KT_CONS,1),    K(KT_CONS,2),    K(KT_CONS,3),    K(KT_CONS,4),
  1395. /* 40-43 */    K(KT_CONS,5),    K(KT_CONS,6),    K(KT_CONS,7),    K(KT_CONS,8),
  1396. /* 44-47 */    K(KT_CONS,9),    K_NUM,    K_HOLD,    K_ASC7,
  1397. /* 48-4b */    K_ASC8,    K_ASC9,    K_PMINUS,    K_ASC4,
  1398. /* 4c-4f */    K_ASC5,    K_ASC6,    K_PPLUS,    K_ASC1,
  1399. /* 50-53 */    K_ASC2,    K_ASC3,    K_ASC0,    K_PDOT,
  1400. /* 54-57 */    K_CONS,    K_HOLE,    K(KT_META,'<'),    K(KT_CONS,10),
  1401. /* 58-5b */    K(KT_CONS,11),    K_HOLE,    K_HOLE,    K(KT_META,'H'&0x1f),
  1402. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1403. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    '\\'&0x1f,
  1404. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1405. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1406. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1407. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1408. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1409. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1410. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1411.     }, { /* shift alt */
  1412. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1413. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1414. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1415. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1416. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1417. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1418. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1419. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1420. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1421. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1422. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1423. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1424. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1425. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1426. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1427. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1428. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1429. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1430. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1431. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1432. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1433. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1434. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1435. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1436. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1437. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1438. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1439. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1440. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1441. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1442. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1443. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1444.     }, { /* alt altgr */
  1445. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1446. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1447. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1448. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1449. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1450. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1451. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1452. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1453. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1454. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1455. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1456. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1457. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1458. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1459. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1460. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1461. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1462. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1463. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1464. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1465. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1466. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1467. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1468. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1469. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1470. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1471. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1472. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1473. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1474. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1475. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1476. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1477.     }, { /* shift alt altgr */
  1478. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1479. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1480. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1481. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1482. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1483. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1484. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1485. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1486. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1487. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1488. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1489. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1490. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1491. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1492. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1493. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1494. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1495. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1496. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1497. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1498. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1499. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1500. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1501. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1502. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1503. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1504. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1505. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1506. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1507. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1508. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1509. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1510.     }, { /* control alt */
  1511. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1512. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1513. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1514. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1515. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1516. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1517. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1518. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1519. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1520. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1521. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1522. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1523. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1524. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1525. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1526. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1527. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1528. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1529. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1530. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1531. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_BOOT,
  1532. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1533. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1534. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1535. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1536. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1537. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1538. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_BOOT,
  1539. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1540. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1541. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1542. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1543.     }, { /* shift control alt */
  1544. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1545. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1546. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1547. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1548. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1549. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1550. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1551. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1552. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1553. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1554. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1555. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1556. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1557. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1558. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1559. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1560. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1561. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1562. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1563. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1564. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1565. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1566. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1567. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1568. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1569. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1570. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1571. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1572. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1573. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1574. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1575. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1576.     }, { /* control alt altgr */
  1577. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1578. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1579. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1580. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1581. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1582. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1583. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1584. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1585. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1586. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1587. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1588. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1589. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1590. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1591. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1592. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1593. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1594. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1595. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1596. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1597. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1598. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1599. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1600. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1601. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1602. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1603. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1604. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1605. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1606. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1607. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1608. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1609.     }, { /* shift control alt altgr */
  1610. /* 00-03 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1611. /* 04-07 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1612. /* 08-0b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1613. /* 0c-0f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1614. /* 10-13 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1615. /* 14-17 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1616. /* 18-1b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1617. /* 1c-1f */    K_ENTER,    K_CTRL,    K_HOLE,    K_HOLE,
  1618. /* 20-23 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1619. /* 24-27 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1620. /* 28-2b */    K_HOLE,    K_HOLE,    K_SHIFT,    K_HOLE,
  1621. /* 2c-2f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1622. /* 30-33 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1623. /* 34-37 */    K_HOLE,    K_HOLE,    K_SHIFT,    K_PSTAR,
  1624. /* 38-3b */    K_ALT,    K_HOLE,    K_CAPS,    K_HOLE,
  1625. /* 3c-3f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1626. /* 40-43 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1627. /* 44-47 */    K_HOLE,    K_NUM,    K_HOLE,    K_P7,
  1628. /* 48-4b */    K_P8,    K_P9,    K_PMINUS,    K_P4,
  1629. /* 4c-4f */    K_P5,    K_P6,    K_PPLUS,    K_P1,
  1630. /* 50-53 */    K_P2,    K_P3,    K_P0,    K_PDOT,
  1631. /* 54-57 */    K_CONS,    K_HOLE,    K_HOLE,    K_HOLE,
  1632. /* 58-5b */    K_HOLE,    K_HOLE,    K_HOLE,    'H'&0x1f,
  1633. /* 5c-5f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1634. /* 60-63 */    K_PENTER,    K_CTRL,    K_PSLASH,    K_HOLE,
  1635. /* 64-67 */    K_ALTGR,    K_BREAK,    K_FIND,    K_UP,
  1636. /* 68-6b */    K_PGUP,    K_LEFT,    K_RIGHT,    K_SELECT,
  1637. /* 6c-6f */    K_DOWN,    K_PGDN,    K_INSERT,    K_REMOVE,
  1638. /* 70-73 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1639. /* 74-77 */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1640. /* 78-7b */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1641. /* 7c-7f */    K_HOLE,    K_HOLE,    K_HOLE,    K_HOLE,
  1642.     },
  1643. };
  1644.  
  1645. #endif
  1646.  
  1647.  
  1648. char func_buf[FUNC_BUFSIZE] = {
  1649.     '\033', '[', '[', 'A', 0, 
  1650.     '\033', '[', '[', 'B', 0, 
  1651.     '\033', '[', '[', 'C', 0, 
  1652.     '\033', '[', '[', 'D', 0, 
  1653.     '\033', '[', '[', 'E', 0, 
  1654.     '\033', '[', '1', '7', '~', 0, 
  1655.     '\033', '[', '1', '8', '~', 0, 
  1656.     '\033', '[', '1', '9', '~', 0, 
  1657.     '\033', '[', '2', '0', '~', 0, 
  1658.     '\033', '[', '2', '1', '~', 0, 
  1659.     '\033', '[', '2', '3', '~', 0, 
  1660.     '\033', '[', '2', '4', '~', 0, 
  1661.     '\033', '[', '2', '5', '~', 0, 
  1662.     '\033', '[', '2', '6', '~', 0, 
  1663.     '\033', '[', '2', '8', '~', 0, 
  1664.     '\033', '[', '2', '9', '~', 0, 
  1665.     '\033', '[', '3', '1', '~', 0, 
  1666.     '\033', '[', '3', '2', '~', 0, 
  1667.     '\033', '[', '3', '3', '~', 0, 
  1668.     '\033', '[', '3', '4', '~', 0, 
  1669.     '\033', '[', '1', '~', 0, 
  1670.     '\033', '[', '2', '~', 0, 
  1671.     '\033', '[', '3', '~', 0, 
  1672.     '\033', '[', '4', '~', 0, 
  1673.     '\033', '[', '5', '~', 0, 
  1674.     '\033', '[', '6', '~', 0, 
  1675.     0, 
  1676.     0, 
  1677.     0, 
  1678.     0, 
  1679.     0, 
  1680.     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
  1681. };
  1682.  
  1683. char *func_table[NR_FUNC] = {
  1684.     func_buf + 0,
  1685.     func_buf + 5,
  1686.     func_buf + 10,
  1687.     func_buf + 15,
  1688.     func_buf + 20,
  1689.     func_buf + 25,
  1690.     func_buf + 31,
  1691.     func_buf + 37,
  1692.     func_buf + 43,
  1693.     func_buf + 49,
  1694.     func_buf + 55,
  1695.     func_buf + 61,
  1696.     func_buf + 67,
  1697.     func_buf + 73,
  1698.     func_buf + 79,
  1699.     func_buf + 85,
  1700.     func_buf + 91,
  1701.     func_buf + 97,
  1702.     func_buf + 103,
  1703.     func_buf + 109,
  1704.     func_buf + 115,
  1705.     func_buf + 120,
  1706.     func_buf + 125,
  1707.     func_buf + 130,
  1708.     func_buf + 135,
  1709.     func_buf + 140,
  1710.     func_buf + 145,
  1711.     func_buf + 146,
  1712.     func_buf + 147,
  1713.     func_buf + 148,
  1714.     func_buf + 149,
  1715.     func_buf + 150,
  1716. };
  1717.  
  1718. struct kbdiacr accent_table[MAX_DIACR] = {
  1719.     {'`', 'A', '\300'},    {'`', 'a', '\340'},
  1720.     {'\'', 'A', '\301'}, {'\'', 'a', '\341'},
  1721.     {'^', 'A', '\302'},    {'^', 'a', '\342'},
  1722.     {'~', 'A', '\303'},    {'~', 'a', '\343'},
  1723.     {'"', 'A', '\304'},    {'"', 'a', '\344'},
  1724.     {'O', 'A', '\305'},    {'o', 'a', '\345'},
  1725.     {'0', 'A', '\305'},    {'0', 'a', '\345'},
  1726.     {'A', 'A', '\305'},    {'a', 'a', '\345'},
  1727.     {'A', 'E', '\306'},    {'a', 'e', '\346'},
  1728.     {',', 'C', '\307'},    {',', 'c', '\347'},
  1729.     {'`', 'E', '\310'},    {'`', 'e', '\350'},
  1730.     {'\'', 'E', '\311'},{'\'', 'e', '\351'},
  1731.     {'^', 'E', '\312'},    {'^', 'e', '\352'},
  1732.     {'"', 'E', '\313'},    {'"', 'e', '\353'},
  1733.     {'`', 'I', '\314'},    {'`', 'i', '\354'},
  1734.     {'\'', 'I', '\315'},{'\'', 'i', '\355'},
  1735.     {'^', 'I', '\316'},    {'^', 'i', '\356'},
  1736.     {'"', 'I', '\317'},    {'"', 'i', '\357'},
  1737.     {'-', 'D', '\320'},    {'-', 'd', '\360'},
  1738.     {'~', 'N', '\321'},    {'~', 'n', '\361'},
  1739.     {'`', 'O', '\322'},    {'`', 'o', '\362'},
  1740.     {'\'', 'O', '\323'},{'\'', 'o', '\363'},
  1741.     {'^', 'O', '\324'},    {'^', 'o', '\364'},
  1742.     {'~', 'O', '\325'},    {'~', 'o', '\365'},
  1743.     {'"', 'O', '\326'},    {'"', 'o', '\366'},
  1744.     {'/', 'O', '\330'},    {'/', 'o', '\370'},
  1745.     {'`', 'U', '\331'},    {'`', 'u', '\371'},
  1746.     {'\'', 'U', '\332'},{'\'', 'u', '\372'},
  1747.     {'^', 'U', '\333'},    {'^', 'u', '\373'},
  1748.     {'"', 'U', '\334'},    {'"', 'u', '\374'},
  1749.     {'\'', 'Y', '\335'},{'\'', 'y', '\375'},
  1750.     {'T', 'H', '\336'},    {'t', 'h', '\376'},
  1751.     {'s', 's', '\337'},    {'"', 'y', '\377'},
  1752.     {'s', 'z', '\337'},    {'i', 'j', '\377'},
  1753. };
  1754.  
  1755. unsigned int accent_table_size = 68;
  1756.  
  1757. /* Local Variables: */
  1758. /* tab-width:24 */
  1759. /* End: */
  1760.